bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Tue, 16 Dec 2025 11:47:30 +0000 (12:47 +0100)
committerSylvestre Ledru <sylvestre@debian.org>
Tue, 16 Dec 2025 11:47:30 +0000 (12:47 +0100)
commit3d338a6e53248569bc9fe8836def405612a389c9
tree2703bdd570f01a87345334c655b62ff07018c686
parentcb76085d7978a1bc1b46e7cd2e8f258cf9bb70e2
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h